package com.example.testapplication;

import androidx.appcompat.app.AppCompatActivity;

import android.app.ActivityGroup;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;

public class DepartmentStoreActivity extends ActivityGroup implements View.OnClickListener {
    private static final String TAG = "DepartmentStoreActivity";
    private Bundle mBundle = new Bundle(); // 声明一个包裹对象
    private LinearLayout ll_container,ll_first, ll_second, ll_third;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_department_store);
        ll_container = findViewById(R.id.ll_container55);
        ll_first = findViewById(R.id.ll_first1); // 获取第一个标签的线性布局
        ll_second = findViewById(R.id.ll_second2); // 获取第二个标签的线性布局
        ll_third = findViewById(R.id.ll_third3); // 获取第三个标签的线性布局
        ll_first.setOnClickListener(this); // 给第一个标签注册点击监听器
        ll_second.setOnClickListener(this); // 给第二个标签注册点击监听器
        ll_third.setOnClickListener(this); // 给第三个标签注册点击监听器
        mBundle.putString("tag", TAG); // 往包裹中存入名叫tag的标记串
        changeContainerView(ll_first); // 默认显示第一个标签的内容视图
    }

    @Override
    public void onClick(View view) {
        if(view.getId() == R.id.ll_first1 || view.getId() == R.id.ll_second2|| view.getId() == R.id.ll_third3){
            changeContainerView(view);
        }
        
    }

    private void changeContainerView(View view) {
        ll_first.setSelected(false); // 取消选中第一个标签
        ll_second.setSelected(false); // 取消选中第二个标签
        ll_third.setSelected(false); // 取消选中第三个标签

        view.setSelected(true); // 选中指定标签
        if (view == ll_first) {
            // 切换到第一个活动页面TabFirstActivity
            toActivity("first", DepartmentHomeActivity.class);
        } else if (view == ll_second) {
            // 切换到第二个活动页面TabSecondActivity
            toActivity("second", DepartmentClassActivity.class);
        } else if (view == ll_third) {
            // 切换到第三个活动页面TabThirdActivity
            toActivity("third", DepartmentCartActivity.class);
        }
    }

    private void toActivity(String label,Class<?> cls){
        // 创建一个意图 并存入指定包裹
        Intent intent = new Intent(this, cls).putExtras(mBundle);
        // 移除内容框架下面的所有下级视图
        ll_container.removeAllViews();
        // 启动意图指向的活动，并获取取消该活动顶层视图
        // getLocalActivityManager()是ActivityGroup的方法 需要继承ActivityGroup 才可以用
        View v = getLocalActivityManager().startActivity(label, intent).getDecorView();
        // // 设置内容视图的布局参数
        v.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
        // 把活动页面的顶层视图（即内容视图）添加到内容框架上
        ll_container.addView(v);



    }
}